# 使用 Node.js 18 Alpine 作为基础镜像
FROM swr.cn-north-4.myhuaweicloud.com/gitcode-be/node:18-alpine-new

# 创建应用目录
RUN mkdir -p /data/web/app 

# 复制构建产物
ADD ./dist /data/web/app/.output 

# 复制应用文件
ADD package.json app.js /data/web/app/

# 创建PM2配置
RUN echo 'module.exports = { apps: [{ name: "app", script: "./app.js" }] }' > /data/web/app/ecosystem.config.cjs

# 设置工作目录
WORKDIR /data/web/app/

# 安装依赖
RUN npm install --production

# 创建日志目录
RUN mkdir -p logs

# 启动应用
CMD ["pm2-runtime", "start", "ecosystem.config.cjs"]
